package hr_project.hr.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import hr_project.hr.entity.Role;
import hr_project.hr.entity.Role_Right;

public interface IRoleDao {

	//增加角色
	public void addRole(Role role);
	/**
	 * 以树形结构展示每个角色的权限，
	 * 根据id查一个角色
	 * 需要先有一个找父权限的方法，
	 * 还要有一个根据父权限查找一组子权限的方法（递归）
	 * */
	
	public Role getRoleByid(long rid);
	
	//所有角色的列表
	public List<Role> getAllRole();
	
	public void delRole(long ro_id);
	//删除角色的所有权限
	public void delRoleRight(Long ro_id);
	
	//删除角色的一个权限
	//还要考虑其是不是父权限，是的话还要将其子权限进行删除
		public void deloneRight(Role_Right rr);

	
	/**
	 * 增加单个角色中的权限
	 * 增加权限的时候需要判断，增加的权限是否存在
	 * 为了判断需要再写一个有角色id和权限id的查询方法
	 * */
	public void addright(Role_Right rr);
	

	
}
